Testing downhole tools in a simulated environment

ABSTRACT

Systems and methods may include sending, to a downhole tool emulator, at least one input signal that represents one or more conditions in a simulated well system. The downhole tool emulator may include one or more electronic components to be placed in a downhole tool. The at least one input signal may be generated based at least partially on a reservoir model of the simulated well system. The method may include receiving at least one output signal that represents a response of the downhole tool emulator to the one or more conditions. The method may also include sending, to the downhole tool emulator, at least one command that represents an operation of the downhole tool emulator. The at least one command may represent a change in the operation of the downhole tool emulator based at least partially on the one or more conditions and the response.

BACKGROUND

Various processes exist to test the operation of downhole tools inhydrocarbon drilling and production. To test and validate proper designand operational behavior of a downhole tool, the downhole tool may betested on an actual well. This process, however, may be time consumingand expensive, because it may include performing the actual drilling orproduction process. Moreover, if multiple tools must be tested forcompatibility, multiple tests may be performed on the actual well.

In other processes, the operation of a downhole tool may be simulated.This process involves the simulation of a virtual downhole tool on asimulated well. This process, however, may not ensure the performance ofthe downhole tool because the actual and physical components of thedownhole tool may not be utilized and may not provide high-fidelityresults in terms of behavior of the actual physical equipment.

SUMMARY

Embodiments of the present disclosure may provide a method. The methodmay include sending, to a downhole tool emulator, at least one inputsignal that represents one or more conditions in a simulated wellsystem. The downhole tool emulator may include one or more electroniccomponents to be placed in a downhole tool. The at least one inputsignal may be generated based at least partially on a reservoir model ofthe simulated well system. The method may include receiving, from thedownhole tool emulator, at least one output signal that represents aresponse of the downhole tool emulator to the one or more conditions.The method may also include sending, to the downhole tool emulator, atleast one command that represents an operation of the downhole toolemulator. The at least one command may represent a change in theoperation of the downhole tool emulator based at least partially on theone or more conditions and the response.

In an embodiment, the method may include determining one or more newconditions in the simulated well system based at least partially on thechange in the operation of the downhole tool emulator and the reservoirmodel. The method may also include sending, to the downhole toolemulator, at least one new input signal that represents the one or morenew conditions in the simulated well system.

In an embodiment, the method may include determining one or more newconditions in the simulated well system based at least partially on theat least one output signal that represents the response of the downholetool emulator to the one or more conditions and the reservoir model. Themethod may also include sending, to the downhole tool emulator, at leastone new input signal that represents the one or more new conditions inthe simulated well system.

In an embodiment, the method may include converting the at least oneinput signal to one or more electrical signals that are compatible withthe one or more electronic components to be placed in the downhole tool.

In an embodiment, the method may include collecting data that isrepresentative of an operation of the downhole tool emulator. The datamay include the one or more conditions, the response, and the at leastone command. The method may include analyzing the data to determineproper operations of the one or more electronic components to be placedin a downhole tool.

In an embodiment, the one or more conditions may include a faultcondition in at least one of the one or more electronic components andanalyzing the data may include determining whether the at least one ofthe one or more electronic components responded properly to the faultcondition.

In an embodiment, analyzing the data may include comparing the at leastone command to at least one expected command that represents properoperation of the downhole tool emulator.

Embodiments of the present disclosure may provide another method. Themethod may include receiving, at a downhole tool emulator, at least oneinput signal that represents one or more conditions in a simulated wellsystem. The downhole tool emulator may include one or more electroniccomponents to be placed in a downhole tool. The at least one inputsignal may be generated based at least partially on a reservoir model ofthe simulated well system. The method may include transmitting, from thedownhole tool emulator, at least one output signal that represents aresponse of the downhole tool emulator to the one or more conditions.The method may also include receiving, at the downhole tool emulator, atleast one command that represents an operation of the downhole toolemulator. The at least one command may represent a change in theoperation of the downhole tool emulator based at least partially on theone or more conditions and the response.

In an embodiment, the method may also include receiving, at a downholetool emulator, one or more new conditions in the simulated well systembased at least partially on the change in the operation of the downholetool emulator and the reservoir model. The method may also includesending, from the downhole tool emulator, at least one new output signalthat represents a response of the downhole tool emulator to the one ormore new conditions.

In an embodiment, the method may include receiving, at a downhole toolemulator, one or more new conditions in the simulated well system basedat least partially on the at least one output signal that represents theresponse of the downhole tool emulator to the one or more conditions andthe reservoir model. The method may also include sending, from thedownhole tool emulator, at least one new output signal that represents aresponse of the downhole tool emulator to the one or more newconditions.

In an embodiment, the method may include converting the at least oneinput signal to one or more electrical signals that are compatible withthe one or more electronic components to be placed in the downhole tool.

In an embodiment, the method may include collecting data that isrepresentative of an operation of the downhole tool emulator. The datamay include the one or more conditions, the response, and the at leastone command. The method may also include analyzing the data to determineproper operations of the one or more electronic components to be placedin a downhole tool.

In an embodiment, the one or more conditions may include a faultcondition in at least one of the one or more electronic components andanalyzing the data may include determining whether the at least one ofthe one or more electronic components responded properly to the faultcondition.

In an embodiment, analyzing the data may include comparing the at leastone command to at least one expected command that represents properoperation of the downhole tool emulator.

Embodiments of the present disclosure may provide a system. The systemmay include a downhole tool emulator including one or more downhole toolelectronic components to be placed in a downhole tool. The system mayalso include a simulated surface system including one or more surfacesystem electronic components to be placed in a surface system. Thesystem may also include a computer system. The computer system mayinclude one or more memory devices and one or more processors. The oneor more memory devices may store instructions that cause the one or moreprocessors to perform a method. The method may include simulatingreal-world operating conditions of the downhole tool. The method mayalso include simulating real-world control of the downhole tool based atleast partially on one or more signals received from the downhole toolemulator.

In an embodiment, the one or more memory devices may store instructionsthat cause the one or more processors to perform the method that mayfurther include sending, to the downhole tool emulator, at least oneinput signal that represents one or more conditions in a simulated wellsystem. The at least one input signal may be generated based at leastpartially on a reservoir model of the simulated well system. The methodmay also include receiving, from the downhole tool emulator, at leastone output signal that represents a response of the downhole toolemulator to the one or more conditions. Additionally, the method mayinclude sending, to the downhole tool emulator from simulated surfacesystem, at least one command that represents an operation of thedownhole tool emulator. The at least one command represents a change inthe operation of the downhole tool emulator based at least partially onthe one or more conditions and the response.

In an embodiment, the one or more memory devices may store instructionsthat cause the one or more processors to perform the method that mayfurther include generating the at least one input signal based at leastpartially on the reservoir model of the simulated well system.

In an embodiment, the one or more memory devices may store instructionsthat cause the one or more processors to perform the method that mayfurther include determining one or more new conditions in the simulatedwell system based at least partially on the change in the operation ofthe downhole tool emulator and the reservoir model. The method mayfurther include sending, to the downhole tool emulator, at least one newinput signal that represents the one or more new conditions in thesimulated well system.

In an embodiment, the one or more memory devices may store instructionsthat cause the one or more processors to perform the method that mayfurther include determining one or more new conditions in the simulatedwell system based at least partially on the at least one output signalthat represents a response of the downhole tool emulator to the one ormore conditions and the reservoir model. The method may further includesending, to the downhole tool emulator, at least one new input signalthat represents the one or more new conditions in the simulated wellsystem.

In an embodiment, the one or more memory devices may store instructionsthat cause the one or more processors to perform the method that mayfurther include collecting data that is representative of an operationof the downhole tool emulator. The data may include the one or moreconditions, the response, and the at least one command. The method mayfurther include analyzing the data to determine proper operations of theone or more downhole tool electronic components.

In an embodiment, the one or more conditions may include a faultcondition in at least one of the one or more downhole tool electroniccomponents, and analyzing the data may include determining whether theat least one of the one or more downhole tool electronic componentsresponded properly to the fault condition.

In an embodiment, analyzing the data may include comparing the at leastone command to at least one expected command that represents properoperation of the downhole tool emulator.

In an embodiment, the downhole tool emulator may convert the at leastone input signal to one or more electrical signals that are compatiblewith the one or more electronic components to be placed in the downholetool.

Embodiments of the present disclosure may provide another system. Thesystem may include an emulated downhole tool that may include one ormore downhole tool electronic components to be placed in a downhole tooland a downhole tool emulator that may communicate with the one or moredownhole tool electronic components to be placed in the downhole tooland emulate one or more real-world operating conditions of the downholetool. The system may also include a simulated surface system that mayinclude one or more surface system electronic components to be placed ina surface system and a surface emulator that may communicate with theone or more surface system electronic components to be placed in asurface system and emulate real-world control of the downhole tool basedat least partially on one or more signals received from the emulateddownhole tool. The system may also include a computer system that mayinclude one or more memory devices and one or more processors. The oneor more memory devices may store instructions that cause the one or moreprocessors to perform a method. The method may include sending, to theemulated downhole tool, at least one input signal that represents one ormore conditions in a simulated well system. The at least one inputsignal may be generated by a reservoir model of the well system. Themethod may include receiving, from the emulated downhole tool via thesimulated surface system, at least one output signal that represents aresponse of the emulated downhole tool to the one or more conditions.Additionally, the method may include sending, to the emulated downholetool via the simulated surface system, at least one command thatrepresents an operation of the emulated downhole tool. The at least onecommand may represent a change in the operation of the emulated downholetool based at least partially on the one or more conditions and theresponse.

In an embodiment, the one or more memory devices may store instructionsthat cause the one or more processors to perform the method that mayfurther include generating the at least one input signal based at leastpartially on the reservoir model of the simulated well system.

In an embodiment, the one or more memory devices may store instructionsthat cause the one or more processors to perform the method that mayfurther include determining one or more new conditions in the simulatedwell system based at least partially on the change in the operation ofthe emulated downhole tool and the reservoir model. The method may alsoinclude sending, to the emulated downhole tool, at least one new inputsignal that represents the one or more new conditions in the simulatedwell system.

In an embodiment, the one or more memory devices may store instructionsthat cause the one or more processors to perform the method that mayfurther include determining one or more new conditions in the simulatedwell system based at least partially on the at least one output signalthat represents a response of the emulated downhole tool to the one ormore conditions and the reservoir model. The method may also includesending, to the emulated downhole tool, at least one new input signalthat represents the one or more new conditions in the simulated wellsystem.

In an embodiment, the one or more memory devices may store instructionsthat cause the one or more processors to perform the method that mayfurther include collecting data that is representative of an operationof the emulated downhole tool. The data may include the one or moreconditions, the response, and the at least one command. The method mayinclude analyzing the data to determine proper operations of the one ormore downhole tool electronic components.

In an embodiment, the one or more conditions may include a faultcondition in at least one of the one or more downhole tool electroniccomponents, and analyzing the data may include determining whether theat least one of the one or more downhole tool electronic componentsresponded properly to the fault condition.

In an embodiment, analyzing the data may include comparing the at leastone command to at least one expected command that represents properoperation of the emulated downhole tool.

In an embodiment, the downhole tool emulator may convert the at leastone input signal to one or more electrical signals that are compatiblewith the one or more downhole tool electronic components.

In an embodiment, the simulated surface system may include one or morephysical interfaces to receive user input.

Embodiments of the present disclosure may provide another system. Thesystem may include one or more electronic components to be placed in adownhole tool. The system may also include a computer system thatincludes one or more memory devices and one or more processors. The oneor more memory devices may store instructions that cause the one or moreprocessors to perform a method. The method may include receiving atleast one input signal that represents one or more conditions in asimulated well system. The at least one input signal may be generated bya reservoir model of the simulated well system. The method may includeconverting the at least one input signal into at least one simulatedinput for the one or more electronic components. The method may alsoinclude sending at least one output signal that represents a response ofthe one or more electronic components to the one or more conditions.

In an embodiment, the one or more memory devices may store instructionsthat cause the one or more processors to perform the method that mayfurther include generate the at least one input signal based at leastpartially on the reservoir model of the simulated well system.

In an embodiment, the one or more memory devices may store instructionsthat cause the one or more processors to perform the method that mayfurther include collecting data that is representative of an operationof the one or more electronic components. The method may further includeanalyzing the data to determine proper operations of the one or moreelectronic components.

In an embodiment, the one or more conditions may include a faultcondition in at least one of the one or more electronic components, andanalyzing the data may include determining whether the at least one ofthe one or more electronic components responded properly to the faultcondition.

In an embodiment, analyzing the data may include comparing the at leastone command to at least one expected command that represents properoperation of the one or more electronic components.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of this specification, illustrate embodiments of the presentteachings and together with the description, serve to explain theprinciples of the present teachings. In the figures:

FIG. 1 illustrates an example of a system that includes variouscomponents to simulate and emulate a well system according to anembodiment.

FIGS. 2A-2C illustrate additional examples of the various components tosimulate and emulate a well system according to an embodiment.

FIG. 3 illustrates a flowchart of an example of a method for simulatinga well system according to an embodiment.

FIG. 4 illustrates a flowchart of another example of a method forsimulating a well system according to an embodiment.

FIG. 5 illustrates a flowchart of an example of a method for emulating adownhole tool according to an embodiment.

FIG. 6 illustrates a flowchart of an example of a method for testing anemulated downhole tool according to an embodiment.

FIGS. 7A and 7B illustrate flowcharts of another example of a method forsimulating a well system according to an embodiment.

FIGS. 8A and 8B illustrate flowcharts of another example of a method forsimulating a well system according to an embodiment.

FIG. 9 illustrates a schematic view of a computing system, according toan embodiment.

DESCRIPTION OF EMBODIMENTS

Reference will now be made in detail to the various embodiments in thepresent disclosure, examples of which are illustrated in theaccompanying drawings and figures. The embodiments are described belowto provide a more complete understanding of the components, processesand apparatuses disclosed herein. Any examples given are intended to beillustrative, and not restrictive. However, it will be apparent to oneof ordinary skill in the art that the invention may be practiced withoutthese specific details. In other instances, well-known methods,procedures, components, circuits, and networks have not been describedin detail so as not to unnecessarily obscure aspects of the embodiments.

Throughout the specification and claims, the following terms take themeanings explicitly associated herein, unless the context clearlydictates otherwise. The phrases “in some embodiments” and “in anembodiment” as used herein do not necessarily refer to the sameembodiment(s), though they may. Furthermore, the phrases “in anotherembodiment” and “in some other embodiments” as used herein do notnecessarily refer to a different embodiment, although they may. Asdescribed below, various embodiments may be readily combined, withoutdeparting from the scope or spirit of the present disclosure.

As used herein, the term “or” is an inclusive operator, and isequivalent to the term “and/or,” unless the context clearly dictatesotherwise. The term “based on” is not exclusive and allows for beingbased on additional factors not described, unless the context clearlydictates otherwise. In the specification, the recitation of “at leastone of A, B, and C,” includes embodiments containing A, B, or C,multiple examples of A, B, or C, or combinations of A/B, A/C, B/C,A/B/B/B/B/C, A/B/C, etc. In addition, throughout the specification, themeaning of “a,” “an,” and “the” include plural references. The meaningof “in” includes “in” and “on.”

It will also be understood that, although the terms first, second, etc.may be used herein to describe various elements, these elements shouldnot be limited by these terms. These terms are used to distinguish oneelement from another. For example, a first object or step could betermed a second object or step, and, similarly, a second object or stepcould be termed a first object, without departing from the scope of theinvention. The first object and the second object are both objects, butthey are not to be considered the same object. It will be furtherunderstood that the terms “includes,” “including,” “comprises” and/or“comprising,” when used in this specification, specify the presence ofstated features, integers, operations, elements, and/or components, butdo not preclude the presence or addition of one or more other features,integers, steps, operations, elements, components, and/or groupsthereof. Further, as used herein, the term “if” may be construed to mean“when” or “upon” or “in response to determining” or “in response todetecting,” depending on the context.

When referring to any numerical range of values herein, such ranges areunderstood to include each and every number and/or fraction between thestated range minimum and maximum. For example, a range of 0.5-6% wouldexpressly include intermediate values of 0.6%, 0.7%, and 0.9%, up to andincluding 5.95%, 5.97%, and 5.99%. The same applies to each othernumerical property and/or elemental range set forth herein, unless thecontext clearly dictates otherwise.

Attention is now directed to processing procedures, methods, techniques,and workflows that are in accordance with some embodiments. Someoperations in the processing procedures, methods, techniques, andworkflows disclosed herein may be combined and/or the order of someoperations may be changed.

FIG. 1 illustrates an example of a system 100 that allows simulation andtesting of a well system and hardware components utilized in the wellsystem. In embodiments, the system 100 may provide a complete systemthat allows a real-world and real-time simulation and emulation of awell system.

In the example of FIG. 1, the system 100 may include a control system102, a surface system simulator 104, a real-time acquisition system 106,a reservoir simulator 108, and a downhole tool testing system 110. Thecontrol system 102, the surface system simulator 104, the real-timeacquisition system 106, the reservoir simulator 108, and the downholetool testing system 110 may communicate and interact to facilitate areal-world and real-time simulation and emulation of the well system.Each of the control system 102, the surface system simulator 104, thereal-time acquisition system 106, the reservoir simulator 108, and thedownhole tool testing system 110 may represent a different system of thewell system to be simulated and emulated. In some embodiments, thecontrol system 102, the surface system simulator 104, the real-timeacquisition system 106, the reservoir simulator 108, and the downholetool testing system 110 may be implemented in separate and individualhardware and software systems. For example, any of the control system102, the surface system simulator 104, the real-time acquisition system106, the reservoir simulator 108, and the downhole tool testing system110 may be implemented in a general purpose computer system, such as,for example, a laptop computer, desktop computer, server computer, andthe like. Likewise, for example, any of the control system 102, thesurface system simulator 104, the real-time acquisition system 106, thereservoir simulator 108, and the downhole tool testing system 110 may beimplemented in a special purpose computer system, for example, asoftware appliance, blade server, and the like. In some embodiments, oneor more of the control system 102, the surface system simulator 104, thereal-time acquisition system 106, the reservoir simulator 108, and thedownhole tool testing system 110 may be implemented in same hardware andsoftware system.

In the example of FIG. 1, the control system 102 may be configured toprovide overall control for the system 100. The control system 102 maybe configured to communicate with any of the other components of thesystem 100, for example, the surface system simulator 104, the real-timeacquisition system 106, the reservoir simulator 108, and the downholetool testing system 110. In embodiments, the control system 102 may beconfigured to allow a user to configure the well system simulation andmonitor the well system simulation during operation. For example, thecontrol system 102 may include controls and interfaces to allow a userto define parameters for the well system simulation such as a reservoirto be simulated, downhole tools to be utilized during the simulation,data to be collected during the simulation, and the like. In someembodiments, the functionality of the control system 102 may beincorporated into one or more of the other components of the system 100,for example, the surface system simulator 104, the real-time acquisitionsystem 106, the reservoir simulator 108, and the downhole tool testingsystem 110.

In the example of FIG. 1, the surface system simulator 104 may beconfigured to provide a real-time simulation interface for controllingoperations of the well system to be simulated and emulated. For example,the surface system simulator 104 may include one or more controls andinterfaces that allow a user to simulate usage of the downhole toolsthat are tested in the downhole tool testing system 110. In someembodiments, for example, the surface system simulator 104 may includethe controls and interfaces of a winch system that simulates control andusage of the downhole tools that are tested in the downhole tool testingsystem 110. In some embodiments, the surface system simulator 104 may becoupled to the real-time acquisition system 106 and the downhole tooltesting system 110. In some embodiments, as a user simulates usage ofthe downhole tools using the controls and interfaces, the surface systemsimulator 104 may be configured to send signals to the real-timeacquisition system 106 and the downhole tool testing system 110 thatrepresent commands entered by the user. In some embodiments, the surfacesystem simulator 104 may be configured to receive data from the downholetool testing system 110 and send the data to the real-time acquisitionsystem 106.

In the example of FIG. 1, the real-time acquisition system 106 may beconfigured to collect data from the surface system simulator 104 and thedownhole tool testing system 110. The real-time acquisition system 106may be configured to process the data received from the surface systemsimulator 104 to determine commands entered and actions taken by a useron the surface system simulator 104 during operations. The real-timeacquisition system 106 may be configured to process the data from thedownhole tool testing system 110 and determine the data collected by thedownhole tool testing system 110 and the responses of the downhole tooltesting system 110 to user actions on the surface system simulator 104.The real-time acquisition system 106 may be configured to provide thecollected data to the reservoir simulator 108. In some embodiments, forexample, the real-time acquisition system 106 may include real-time dataacquisition hardware and software such as MAXWELL®.

In the example of FIG. 1, the reservoir simulator 108 may be configuredto simulate a reservoir of the simulated well system and generate one ormore conditions in the wellbore of the simulated well system. Thereservoir simulator 108 may be configured to utilize one or morereservoir models to determine the one or more conditions in the wellborebased on the data collected from the real-time acquisition system 106,the surface system simulator 104, and the downhole tool testing system110. For example, the one or more conditions may include pressure in thewellbore, temperature in the wellbore, position of the downhole tools,flow rates of fluid in the wellbore, rate of penetration of the a drill,geological structure and formations in the wellbore, and the like. Asthe user interacts with the surface system simulator 104, and thedownhole tool testing system 110 transmits data, the reservoir simulator108 may be configured to utilize the one or more reservoir models togenerate new conditions based on the user interactions and position ofthe downhole tools. The reservoir simulator 108 may be configured tosend the one or more conditions to the downhole tool testing system 110during operations of the system 100.

In the example of FIG. 1, the downhole tool testing system 110 may beconfigured to provide a platform to test and operate one or moredownhole tool emulators, such as, for example, a downhole tool emulator112, a downhole tool emulator 114, and a downhole tool emulator 116. Insome embodiments, the downhole tool emulators 112, 114, 116 mayrepresent or be different types of downhole tools. The types of downholetools emulated may be any type of logging, sensing, measuring, anddrilling tools utilized by a well or drilling system in a wellbore. Insome embodiments, for example, downhole tool emulators 112, 114, 116 mayrepresent different types of downhole tools. In some embodiments, forexample, the downhole tool emulator 112, 114, 116 may representdifferent configurations of the same downhole tools.

In some embodiments, at least one of the downhole tool emulators 112,114, 116 may provide a platform for testing real-word and physicalcomponents of downhole under simulated conditions. To test components ofdifferent downhole tools, the downhole tool emulators 112, 114, 116 mayinclude the physical components, for example, electrical circuits,sensors, processors, and the like, that are found in real-world downholetools. To operate and test the physical components, the downhole toolemulators 112, 114, 116 may include hardware, software, and combinationsthereof that emulate the conditions found in the wellbore and feed theemulated conditions to the physical components. The downhole toolemulators 112, 114, 116 allow the physical components to be tested as ifthe physical components are operating in a real-world wellbore.

The downhole tool emulators 112, 114, 116 may be configured to receivethe one or more conditions from the reservoir simulator 108 and convertthe conditions to electrical signals that are readable by the physicalcomponents. The physical components may process the electrical signalsreceived and output data that represents the one or more conditionssensed by the physical components. The output data may be received bythe components of the system 100 for continued simulation and analysisof the operation of the downhole tools.

FIGS. 2A, 2B, and 2C illustrate more detailed examples of variouscomponents of the system 100. FIG. 2A illustrates an example of thereservoir simulator 108 that allows simulation of downhole conditions inthe simulated well system. For example, as illustrated in FIG. 2A, thereservoir simulator 108 may include a reservoir model engine 120, aninput interface 122, a data store 124, and an output interface 126. Insome embodiments, the reservoir model engine 120 may be configured togenerate one or more conditions in wellbore during simulation of thewell system. For example, the reservoir model engine 120 may include anynecessary hardware, software, logic, algorithms, and the like togenerate one or more conditions in a wellbore.

In the example of FIG. 2A, the input interface 122 may be configured toreceive data from the real-time acquisition system 106 and send the datato the reservoir model engine 120. In some embodiments, the datareceived may include data that is collected and processed by thereal-time acquisition system 106, for example, the user interaction withthe surface system simulator 104 and the data from the downhole tooltesting system 110.

In the example of FIG. 2A, the data store 124 may store data that isutilized by the reservoir model engine 120 to generate the conditions ina wellbore. In embodiments, the data store 124 may include one or morereservoir models that represent different types of reservoirs. The datastore 124 may also include data utilized by the reservoirs models togenerate the one or more conditions, for example, seismic data, datafrom offset wells, data from previous drilling operations, and the like.In some embodiments, for example, the data may include entities.Entities may include earth entities or geological objects such as wells,surfaces, bodies, reservoirs, etc. In the reservoir simulator 108, theentities may include virtual representations of actual physical entitiesthat are reconstructed for purposes of simulation. The entities mayinclude entities based on data acquired via sensing, observation, etc.(e.g., the seismic data and other information). An entity may becharacterized by one or more properties (e.g., a geometrical pillar gridentity of an earth model may be characterized by a porosity property).Such properties may represent one or more measurements (e.g., acquireddata), calculations, etc.

In an example embodiment, the reservoir model engine 120 may operate inconjunction with a software framework such as an object-based framework.In such a framework, entities may include entities based on pre-definedclasses to facilitate modeling and simulation. A commercially availableexample of an object-based framework is the MICROSOFT® .NET® framework,which provides a set of extensible object classes. In the .NET®framework, an object class encapsulates a module of reusable code andassociated data structures. Object classes may be used to instantiateobject instances for use in by a program, script, etc. For example,borehole classes may define objects for representing boreholes based onwell data.

In the example of FIG. 2A, the reservoir model engine 120 may processinformation to conform to one or more attributes specified, which mayinclude a library of attributes. Such processing may occur prior toinput to the reservoir model engine 120. As an example, the reservoirmodel engine 120 may perform operations on input information based onone or more attributes specified. In an example embodiment, thereservoir model engine 120 may construct one or more models of wellsystem, e.g., the geologic environment, which may be relied on tosimulate behavior and conditions of the geologic environment (e.g.,responsive to one or more acts, whether natural or artificial).

As an example, the reservoir model engine 120 may include one or morefeatures of a simulator such as the ECLIPSE™ reservoir simulator, theINTERSECT™ reservoir simulator, etc. As an example, a simulationcomponent, a simulator, etc. may include features to implement one ormore meshless techniques (e.g., to solve one or more equations, etc.).As an example, a reservoir or reservoirs may be simulated with respectto one or more enhanced recovery techniques (e.g., a thermal processsuch as steam-assisted gravity drainage (SAGD), etc.).

Additionally, as an example, the reservoir simulator 108 may include thecommercially available OCEAN® framework where the reservoir model engine120 is the commercially available PETREL® model-centric software packagethat hosts OCEAN® framework applications. In an example embodiment, thePETREL® software may be considered a data-driven application. ThePETREL® software may include a framework for model building andvisualization.

As an example, a framework may include features for implementing one ormore mesh generation techniques. For example, a framework may include aninput component for receipt of information from interpretation ofseismic data, one or more attributes based at least in part on seismicdata, log data, image data, etc. Such a framework may include a meshgeneration component that processes input information, optionally inconjunction with other information, to generate a mesh.

In the example of FIG. 2A, the output interface 126 may be configured tosend the one or more conditions generated by the reservoir model engine120 to the downhole tool testing system 110. In some embodiments, forexample, the output interface 126 may be an interface to a wiredcommunication network with the downhole tool testing system 110. In someembodiments, for example, the output interface 126 may be an interfaceto a wireless communication network with the downhole tool testingsystem 110.

FIG. 2B illustrates an example of the surface system simulator 104 thatallows a user to interact with the well system being simulated. In theexample of FIG. 2B, the surface system simulator 104 may include a winchcontrols 130, a winch control interface 132, sensory output 134, anacquisition interface 136, a telemetry interface 138, and a power output142.

In the example of FIG. 2B, the winch controls 130 may include anyhardware, software, and combination thereof to simulate operation of thedownhole tools of the downhole tool testing system 110. The winchcontrol interface 132 may include one or more physical interfaces anddevices to allow a user to controls the surface system simulator 104.The winch control interface 132 may allow the user to enter commands todirect the operations of the emulated downhole tools of the downholetool testing system 110. For example, the winch control interface 132may include one or more joysticks that allow a user to simulate themovement of the downhole tools.

In the example of FIG. 2B, the sensory output 134 may include displaysand interfaces that provide an output to a user of the current operationof the surface system simulator 104. In some embodiments, for example,the sensory output 134 may include graphical displays, indicators, datameters, and the like. The sensory output 134 may receive data from thewinch controls 130 that represent to commands from the winch controlinterface 132 and data from the downhole tool testing system 110 thatrepresent simulated operation of the downhole tools.

In the example of FIG. 2B, the acquisition interface 136 may provide acommunication path between the surface system simulator 104 and thereal-time data acquisition system 106. In some embodiments, for example,the acquisition interface 136 may be an interface to a wiredcommunication network. In some embodiments, for example, the acquisitioninterface 136 may be an interface to a wireless communication network.

In the example of FIG. 2B, the telemetry interface 138 may be coupled toa telemetry bus 140. The telemetry bus 140 may provide a communicationpath between the surface system simulator 104 and the downhole tooltesting system 110. The surface system simulator 104 may utilize thetelemetry interface 138 and the telemetry bus 140 to transmit data tothe downhole tool testing system 110 and to receive data from thedownhole tool emulators of the downhole tool testing system 110. In someembodiments, for example, the telemetry interface 138 may be formed overa wired communication path. In some embodiments, for example, thetelemetry interface 138 may be formed over a wireless communicationpath.

In the example of FIG. 2B, the power output 142 may be coupled to apower bus 144. The power output 142 may provide power over the power bus144 to the downhole tool emulators of the downhole tool testing system110.

FIG. 2C illustrates an example of the downhole tool testing system 110that allows the physical components of a downhole tool to be tested. Inthe example of FIG. 2C, the downhole tool testing system 110 may includeone or more downhole tool emulators 112. In the example of FIG. 2C, thedownhole tool emulator 112 may include an embedded hardware and toolemulator 150, a simulator interface 152, a telemetry interface 154, anda power input 156.

In the example of FIG. 2C, the embedded hardware and tool emulator 150may include the physical components, for example, electrical circuits,sensors, processors, and the like, that are found in real world downholetools. To operate and test the physical components, the embeddedhardware and tool emulator 150 may include hardware, software, andcombinations thereof that emulate the conditions found in the wellboreand feed the emulated conditions to the physical components. Theembedded hardware and tool emulator 150 may allow the physicalcomponents to be tested as if the physical components are operating in areal-world wellbore.

In embodiments, for example, the embedded hardware and tool emulator 150may be configured to receive the one or more conditions from thereservoir simulator 108 and convert the conditions to electrical signalsthat are readable by the physical components. The physical componentsmay process the electrical signals received and output data thatrepresents the one or more conditions sensed by the physical components.The data may be output to the surface system simulator 104, via thetelemetry interface 154, for continued simulation and analysis of theoperation of the downhole tools.

In the example of FIG. 2C, the simulator interface 152 may be configuredto receive the one or more conditions generated by the reservoirsimulator 108. In some embodiments, for example, the simulator interface152 may be an interface to a wired communication network with thereservoir simulator 108. In some embodiments, for example, the simulatorinterface 152 may be an interface to a wireless communication networkwith the reservoir simulator 108.

In the example of FIG. 2C, the telemetry interface 154 may be coupled tothe telemetry bus 140. The telemetry bus 140 may provide a communicationpath between the surface system simulator 104 and the downhole toolemulator 112. The downhole tool emulator 112 may utilize the telemetryinterface 154 and the telemetry bus 140 to transmit data to the surfacesystem simulator 104 and to receive data from the surface systemsimulator 104. In some embodiments, for example, the bus 140 may beformed over a wired communication path. In some embodiments, forexample, the bus 140 may be formed over a wireless communication path.

In the example of FIG. 2C, the power input 156 may be coupled to thepower bus 144. The power input 156 may receive power from the power bus144 to operate the downhole tool emulators.

FIG. 3 illustrates a flowchart of a method 300 for performing areal-time well system simulation. As in operation 202, parameters may bereceived for the well system simulation. The parameters may include anydata that can be utilized to perform the well system simulation. Forexample, the parameters may include a particular well to perform thewell system simulation, an identification of the downhole tools tested,an initial state of the well system to be simulated, and otherinitialization parameters. In embodiments, the one or more of theparameters may be provided by a user of the system 100, described above.In embodiments, the one or more of the parameters may be collected by ordetermined independently by the system 100.

In operation 304, a reservoir model and initial downhole conditions maybe determined. In embodiments, for example, the parameters may beutilized to select and configure one or more models for the well systemsimulator. For example, the parameters may be entered into the reservoirsimulator 108. Based on the parameters, the reservoir simulator 108 mayconfigure one or more reservoir models for generating one or moreconditions for wellbore. In some embodiments, for example, based on theparameters, an initial downhole conditions may be generated by thereservoir simulator 108 such as initial location of the downhole toolsof the downhole tool testing system 110, and initial conditions at theinitial location such as pressure in the wellbore, temperature in thewells bore, position of the downhole tools, flow rates of fluid in thewellbore, rate of penetration of the a drill, geological structure andformations in the wellbore, and the like.

In operation 306, a real-time well system simulation may be performed.In embodiments, the reservoir simulator 108 generates one or moreconditions for the downhole tool testing system 110. The one or moreconditions may sensed by the downhole tool emulators of the downholetool testing system 110 and fed back to the reservoir simulator 108 viathe surface system simulator 104 and the real-time acquisition system106. The user operation on the surface system simulator 104 may be alsofed back to the reservoir simulator 108. In response, the reservoirsimulator 108 may generate one or more conditions based on the operationof the downhole tool emulators. This loop may continue during thesimulation to emulate the operation of a well system.

For example, the initial conditions may be sent to the downhole tooltesting system 110. The initial conditions may be received by thedownhole tool emulators and passed to the physical components of thedownhole tool included in the downhole tool emulators. The data from thephysical components of the downhole tool may then be transmitted to thesurface system simulator 104 and the real-time acquisition system 106.In embodiments, as the simulation proceeds, a user may provide commandsto the surface system simulator 104 that represent operation of thedownhole tools. The commands and the data collected from the downholetool testing system 110 may be sent to the reservoir simulator 108. Thereservoir simulator 108 may generate new conditions based on thecommands and the data collected from the downhole tool testing system110 that represent changes based on the operation of the downhole tools.The process may be repeated as new data is received from the downholetools and the user provides new commands.

In operation 308, data may be collected from the real-time well systemsimulation. In some embodiments, the data may include the data output bythe downhole tool testing system 110, the commands and actions by a useron the surface system simulator 104, the model used by the reservoirsimulator 108, the one or more conditions generated by the reservoirsimulator during the simulation, and the like. In some embodiments, forexample, the data may be collected by the control system 102. In someembodiments, the data may be collected by any of the components of thesystem 100.

In operation 310, analysis may be performed on the data from the wellsystem simulation. In some embodiments, the analysis may be performed todetermine the function of components of the simulated well system or auser interaction with the simulated well system.

In some embodiments, for example, the data collected may be analyzed todetermine if the downhole tools operated properly. For example, the oneor more conditions, generated with the reservoir simulator 108, thatwere provided to the downhole tool emulators may be matched to the datathat was generated by the physical components of the downhole toolemulators. Likewise, for example, the data output by the downhole toolemulators may be analyzed to determine if error or faults were generatedduring simulation.

In some embodiments, for example, the data collected may be analyzed todetermine for training purposes. For example, the commands provided tothe surface system simulator 104 may be compared to standard proceduresto determine if the user properly operated the simulated well system.

FIGS. 4 and 5 illustrate flowcharts of methods that may be performed bythe system 100. In some embodiments, the methods illustrated in FIGS. 4and 5 may be performed simultaneously during the simulation of a wellsystem. In some embodiments, any of the methods illustrated in FIGS. 4and 5 may be performed individually.

FIG. 4 illustrates a flowchart of a method 400 for initiating a wellsystem simulation and collecting data from the well system simulation.As illustrated in FIG. 4, the method 400 may begin with receivingparameters for the well system simulation, in operation 402. Theparameters may include any data that may be utilized to perform the wellsystem simulation. For example, the parameters may include a particularwell to perform the well system simulation, an identification of thedownhole tools tested, an initial state of the well system to besimulated, and other initialization parameters. In embodiments, the oneor more of the parameters may be provided by a user of the system 100,described above. In embodiments, the one or more of the parameters maybe collected by or determined independently by the system 100. In someembodiments, the one or more of the parameters may be provided by a userof the system 100, for example, using the control system 102. In someembodiments, the one or more of the parameters may be collected by ordetermined independently by any component of the system 100, forexample, one or more of the control system 102, the surface systemsimulator 104, the real-time acquisition system 106, the reservoirsimulator 108, and the downhole tool testing system 110.

In operation 404, the reservoir simulator may be configured based atleast partially on the parameters. In embodiments, for example, based onthe parameters, the reservoir simulator 108 may configure one or morereservoir models for generating one or more conditions for wellbore. Insome embodiments, for example, based on the parameters, an initialdownhole conditions may be generated by the reservoir simulator 108 suchas initial location of the downhole tools of the downhole tool testingsystem 110, and initial conditions at the initial location such aspressure in the wellbore, temperature in the wells bore, position of thedownhole tools, flow rates of fluid in the wellbore, rate of penetrationof the a drill, geological structure and formations in the wellbore, andthe like.

In operation 406, the well system simulation may begin. For example, theinitial conditions may be sent to the downhole tool testing system 110.The initial conditions may be received by the downhole tool emulatorsand passed to the physical components of the downhole tool included inthe downhole tool emulators. The data from the physical components ofthe downhole tool may then be transmitted to the surface systemsimulator 104 and the real-time acquisition system 106. In embodiments,as the simulation proceeds, a user may provide commands to the surfacesystem simulator 104 that represent operation of the downhole tools. Thecommands and the data collected from the downhole tool testing system110 may be sent to the reservoir simulator 108. The reservoir simulator108 may generate new conditions based on the commands and the datacollected from the downhole tool testing system 110 that representchanges based on the operation of the downhole tools. The process may berepeated as new data is received from the downhole tools and the userprovides new commands.

In operation 408, data may be collected from the well system simulation.In some embodiments, the data may include the data output by thedownhole tool testing system 110, the commands and actions by a user onthe surface system simulator 104, the model used by the reservoirsimulator 108, the one or more conditions generated by the reservoirsimulator during the simulation, and the like. In some embodiments, forexample, the data may be collected by the control system 102. In someembodiments, the data may be collected by any of the components of thesystem 100.

In operation 410, it may be determined if the well system simulation iscomplete. If the well system simulation is still in progress, data maycontinue to be collected in operation 408.

If the well system simulation is complete, an analysis may be performedon the data from the well system simulation, in operation 412. In someembodiments, the analysis may be performed to determine the function ofcomponents of the simulated well system or a user interaction with thesimulated well system.

In some embodiments, for example, the data collected may be analyzed todetermine if the downhole tools operated properly. For example, the oneor more conditions, generated with the reservoir simulator 108, thatwere provided to the downhole tool emulators may be matched to the datathat was generated by the physical components of the downhole toolemulators. Likewise, for example, the data output by the downhole toolemulators may be analyzed to determine if error or faults were generatedduring simulation.

In some embodiments, for example, the data collected may be analyzed todetermine for training purposes. For example, the commands provided tothe surface system simulator 104 may be compared to standard proceduresto determine if the user properly operated the simulated well system.

In embodiments, reports and summaries may be generated and output by thesystem 100 that detail the data collected and results of the analysis.For example, in some embodiments, reports and summaries may be generatedthat detail the operations of the downhole tool emulators and thephysical components of the downhole tool emulators. In some embodiment,for example, reports and summaries may be generated that detail theuser's operation of the simulated well system. The reports and summariesmay be generated and output by any component of the system 100, forexample, the control system 102, the surface system simulator 104, thereal-time acquisition system 106, the reservoir simulator 108, and thedownhole tool testing system 110.

FIG. 5 illustrates a flowchart of a method 500 for operation of thedownhole tool emulators. As illustrated in FIG. 5, the method 500 maybegin with receiving one or more conditions from the reservoirsimulator, in operation 502. In some embodiments, for example, the oneor more conditions may be received from the reservoir simulator 108 viathe simulator interface 152.

In operation 504, the one or more conditions may be converted toelectrical signals that are compatible with the physical components ofthe downhole tools. In some embodiments, for example, the embeddedhardware and tool emulator 150 may be configured to receive the one ormore conditions and covert the conditions to electrical signal. Forexample, if one of the conditions is a temperate at a particularreading, the embedded hardware and tool emulator 150 may convert theparticular reading to an electrical signal that would be properly readby a temperature sensor, if functioning properly, as the particularreading. In operation 506, the electrical signal may be sent to thephysical components.

In operation 508, the data from the physical components may betransmitted to the surface system simulator. In some embodiments, forexample, the data may be transmitted to the surface system simulator 104via the telemetry bus 140.

In operation 510, it may be determined if one or more new conditions arereceived from the reservoir simulator. For example, the one or moreconditions previously sensed by the downhole tool emulator 112 of thedownhole tool testing system 110 may be fed back to the reservoirsimulator 108 via the surface system simulator 104 and the real-timeacquisition system 106. The user operation on the surface systemsimulator 104 may be also fed back to the reservoir simulator 108. Inresponse, the reservoir simulator 108 may generate one or moreconditions based on the operation of the downhole tool emulators. Inresponse, the downhole tool emulator 112 may repeat operations 502-508to determine the response of the physical components of the downholetoo. This loop may continue during the simulation to emulate theoperation of a well system.

As discussed above, the system 100 may be utilized to test physicalcomponents of downhole tools. FIG. 6 illustrates a flowchart of a method600 for testing the physical components of downhole tools. Asillustrated in FIG. 6, the method 600 may begin with receivingparameters for the well system simulation, in operation 602. Theparameters may include any data that may be utilized to perform the wellsystem simulation. For example, the parameters may include a particularwell to perform the well system simulation, an identification of thedownhole tools tested, an initial state of the well system to besimulated, and other initialization parameters. In embodiments, the oneor more of the parameters may be provided by a user of the system 100,described above. For example, in some embodiments, the one or more ofthe parameters may be provided by a user of the system 100, for example,using the control system 102. In some embodiments, the one or more ofthe parameters may be collected by or determined independently by anycomponent of the system 100, for example, one or more of the controlsystem 102, the surface system simulator 104, the real-time acquisitionsystem 106, the reservoir simulator 108, and the downhole tool testingsystem 110.

In operation 604, the reservoir simulator may be configured based atleast partially on the parameters. In embodiments, for example, based onthe parameters, the reservoir simulator 108 may configure one or morereservoir models for generating one or more conditions for wellbore. Insome embodiments, for example, based on the parameters, an initialdownhole conditions may be generated by the reservoir simulator 108 suchas initial location of the downhole tools of the downhole tool testingsystem 110, and initial conditions at the initial location such aspressure in the wellbore, temperature in the wells bore, position of thedownhole tools, flow rates of fluid in the wellbore, rate of penetrationof the a drill, geological structure and formations in the wellbore, andthe like.

In operation 606, the well system simulation may be run. For example,the initial conditions may be sent to the downhole tool testing system110. The initial conditions may be received by the downhole toolemulators and passed to the physical components of the downhole toolincluded in the downhole tool emulators. The data from the physicalcomponents of the downhole tool may then be transmitted to the surfacesystem simulator 104 and the real-time acquisition system 106. Inembodiments, as the simulation proceeds, a user may provide commands tothe surface system simulator 104 that represent operation of thedownhole tools. The commands and the data collected from the downholetool testing system 110 may be sent to the reservoir simulator 108. Thereservoir simulator 108 may generate new conditions based on thecommands and the data collected from the downhole tool testing system110 that represent changes based on the operation of the downhole tools.The process may be repeated as new data is received from the downholetools and the user provides new commands.

In operation 608, it may be determined if a fault is to be inserted intothe system. For example, in some embodiments, a user of the system 100may desire to test the response of the one or more downhole toolemulators in the downhole tool testing system 110 to fault conditions.For example, the user of the system 100 may desire to test a response ofthe physical components of the downhole tools to the fault. A faultcondition may be any condition that represents an anomalous operation ofthe physical components, for example, a malfunction, a failure, and thelike.

If a fault is inserted, in operation 610, a fault condition may be sentto the downhole tool testing system 110. In embodiments, the faultcondition may be one or more signals that cause one or more physicalcomponents of the downhole tool emulators to enter a fault condition. Insome embodiments, the fault condition may be sent by the control system102 to the downhole tool testing system 110. In some embodiments, thefault condition may be sent by another component of the system 100, forexample, the reservoir simulator 108, the real-time acquisition system106, or the surface system simulator 104.

In some embodiments, for example, the fault condition may be received bythe embedded hardware and tool emulator 150 of the downhole toolemulator 112. In response, the embedded hardware and tool emulator 150may convert the fault condition to an electrical signal that matches thephysical component. The electrical signal may then be sent to thephysical component and the response may be output over the telemetryinterface 154.

In operation 612, after the fault is inserted, data may be collectedfrom the well system simulation. In some embodiments, the data collectedmay include the response of physical components of the downhole toolemulators to the fault conditions. In some embodiments, the data mayinclude the data output by the downhole tool testing system 110, thecommands and actions by a user on the surface system simulator 104, themodel used by the reservoir simulator 108, the one or more conditionsgenerated by the reservoir simulator during the simulation, and thelike. In some embodiments, for example, the data may be collected by thecontrol system 102. In some embodiments, the data may be collected byany of the components of the system 100. In some embodiments, if a faultcondition is not inserted in operation 608, method 600 may proceed tooperation 612 to collect data.

In operation 614, it may be determined if the well system simulation iscomplete. If the well system simulation is still in progress, method 600may return to operation 606 to continue simulation, to optionally insertnew fault conditions, and to continue to collect data.

If the well system simulation is complete, an analysis may be performedon the data from the well system simulation, in operation 614. In someembodiments, the analysis may be performed to determine the function ofcomponents of the simulated well system or a user interaction with thesimulated well system. In some embodiments, for example, the datacollected may be analyzed to determine if the downhole tools operatedproperly. For example, the fault conditions sent to the downhole toolemulators may be matched to the data, for example, the responses to thefault conditions that were generated by the physical components of thedownhole tool emulators. Based on the analysis, it may be determined ifthe physical components of the downhole tool emulators respondedproperly to the fault conditions.

In some embodiments, for example, the data may be analyzed to determineif the user of the simulated surface system simulator 104 respondedproperly to the fault condition. For example, the data representing thecommands entered at the surface system simulator 104 may be collectedand compared to an expected response of the user.

Attention is now directed to FIGS. 7A and 7B, which illustrate aflowchart depicting a method 700 for simulating a well system, inaccordance with some embodiments. Some operations in method 700 may becombined and/or the order of some operations may be changed. Further,some operations in method 700 may be combined with aspects of theexample workflows of FIGS. 3, 4, 5, and 6, and/or the order of someoperations in method 700 may be changed to account for incorporation ofaspects of the workflow illustrated by one or more of FIGS. 3, 4, 5, and6.

The method 700 may begin at operation 702. In operation 702, at leastone input signal that represents one or more conditions in a simulatedwell system may be sent to a downhole tool emulator (e.g., FIG. 3, 304and 306, determine reservoir model and initial downhole conditions andperform real-time well system simulation; FIG. 4, 406, begin well systemsimulation). In an embodiment, in 704, the downhole tool emulator maycomprise one or more electronic components to be placed in a downholetool (e.g., FIG. 1, 110, 112, 114, and 116; FIG. 2C, 110 and 112). In anembodiment, in 706, the at least one input signal may be generated basedat least partially on a reservoir model of the simulated well system(e.g., FIG. 3, 304 and 306, determine reservoir model and initialdownhole conditions and perform real-time well system simulation; FIG.4, 406, begin well system simulation).

In operation 708, at least one output signal that represents a responseof the downhole tool emulator to the one or more conditions may bereceived from the downhole tool emulator (e.g., FIG. 3, 304 and 306,determine reservoir model and initial downhole conditions and performreal-time well system simulation; FIG. 4, 406, 408 begin well systemsimulation and collect data from well simulation; FIG. 5, 508 transmitdata from physical components to surface system simulator).

In operation 710, at least one command that represents an operation ofthe downhole tool emulator may be sent to the downhole tool emulator(e.g., FIG. 3, 304 and 306, determine reservoir model and initialdownhole conditions and perform real-time well system simulation; FIG.4, 406, 408 begin well system simulation and collect data from wellsimulation; FIG. 5, 508 transmit data from physical components tosurface system simulator). In an embodiment, at 712, the at least onecommand may represent a change in the operation of the downhole toolemulator based at least partially on the one or more conditions and theresponse

In an embodiment, at operation 714, one or more new conditions in thesimulated well system may be determined based at least partially on thechange in the operation of the downhole tool emulator and the reservoirmodel (e.g., FIG. 3, 304 and 306, determine reservoir model and initialdownhole conditions and perform real-time well system simulation; FIG.4, 406, 408, 410 begin well system simulation and collect data from wellsimulation; FIG. 5, 510).

In an embodiment, at operation 716, at least one new input signal thatrepresents the one or more new conditions in the simulated well systemmay be sent, to the downhole tool emulator (e.g., FIG. 3, 304 and 306,determine reservoir model and initial downhole conditions and performreal-time well system simulation; FIG. 4, 406, 408, 410 begin wellsystem simulation and collect data from well simulation; FIG. 5, 510).

In an embodiment, at operation 718, one or more new conditions in thesimulated well system may be determined based at least partially on theat least one output signal that represents a response of the simulateddownhole tool to the one or more conditions and the reservoir model(e.g., FIG. 3, 304 and 306, determine reservoir model and initialdownhole conditions and perform real-time well system simulation; FIG.4, 406, 408, 410 begin well system simulation and collect data from wellsimulation; FIG. 5, 510).

In an embodiment, at operation 720, at least one new input signal thatrepresents the one or more new conditions in the simulated well systemmay be sent to the downhole tool emulator (e.g., FIG. 3, 304 and 306,determine reservoir model and initial downhole conditions and performreal-time well system simulation; FIG. 4, 406, 408, 410 begin wellsystem simulation and collect data from well simulation; FIG. 5, 510).

In an embodiment, at operation 722, the at least one input signal may beconverted to one or more electrical signals that are compatible with theone or more electronic components to be placed in the downhole tool(e.g., FIG. 5).

In an embodiment, at operation 724, data may be collected that isrepresentative of an operation of the downhole tool emulator, whereinthe data comprises the one or more conditions, the response, and the atleast one command (e.g., FIG. 3, 308, collect data from real-timesimulation; FIG. 4, 408, 410 collect data from well simulation).

In an embodiment, at operation 726, the data may be analyzed todetermine proper operations of the one or more electronic components tobe placed in a downhole tool (e.g., FIG. 3, 310, perform analysis ondata from well system simulation; FIG. 4, 412 perform analysis on datafrom well system simulation). In an embodiment, at operation 728, theone or more conditions may include a fault condition in at least one ofthe one or more electronic components, and analyzing the data mayinclude determining whether the at least one of the one or moreelectronic components responded properly to the fault condition (e.g.,FIG. 6). In an embodiment, at operation 730, analyzing the data mayinclude comparing the at least one command to at least one expectedcommand that represents proper operation of the downhole tool emulator.

Attention is now directed to FIGS. 8A and 8B, which illustrate aflowchart depicting a method 800 for simulating a well system, inaccordance with some embodiments. Some operations in method 800 may becombined and/or the order of some operations may be changed. Further,some operations in method 800 may be combined with aspects of theexample workflows of FIGS. 3, 4, 5, and 6, and/or the order of someoperations in method 800 may be changed to account for incorporation ofaspects of the workflow illustrated by one or more of FIGS. 3, 4, 5, and6.

The method 800 may begin at operation 802. In operation 802, at leastone input signal that represents one or more conditions in a simulatedwell system may be received at a downhole tool emulator (e.g., FIG. 3,304 and 306, determine reservoir model and initial downhole conditionsand perform real-time well system simulation; FIG. 4, 406, begin wellsystem simulation). In an embodiment, in 804, the downhole tool emulatormay comprise one or more electronic components to be placed in adownhole tool (e.g., FIGS. 1, 110, 112, 114, and 116; FIG. 2C, 110 and112). In an embodiment, in 806, the at least one input signal may begenerated based at least partially on a reservoir model of the simulatedwell system (e.g., FIG. 3, 304 and 306, determine reservoir model andinitial downhole conditions and perform real-time well systemsimulation; FIG. 4, 406, begin well system simulation).

In operation 808, at least one output signal that represents a responseof the downhole tool emulator to the one or more conditions may betransmitted from the downhole tool emulator (e.g., FIG. 3, 304 and 306,determine reservoir model and initial downhole conditions and performreal-time well system simulation; FIG. 4, 406, 408 begin well systemsimulation and collect data from well simulation; FIG. 5, 508 transmitdata from physical components to surface system simulator).

In operation 810, at least one command that represents an operation ofthe downhole tool emulator may be received at the downhole tool emulator(e.g., FIG. 3, 304 and 306, determine reservoir model and initialdownhole conditions and perform real-time well system simulation; FIG.4, 406, 408 begin well system simulation and collect data from wellsimulation; FIG. 5, 508 transmit data from physical components tosurface system simulator). In an embodiment, at 812, the at least onecommand may represent a change in the operation of the downhole toolemulator based at least partially on the one or more conditions and theresponse.

In an embodiment, at operation 814, one or more new conditions in thesimulated well system based at least partially on the change in theoperation of the downhole tool emulator and the reservoir model may bereceived at the downhole tool emulator (e.g., FIG. 3, 304 and 306,determine reservoir model and initial downhole conditions and performreal-time well system simulation; FIG. 4, 406, 408, 410 begin wellsystem simulation and collect data from well simulation; FIG. 5, 510).

In an embodiment, at operation 816, at least one new output signal thatrepresents a response of the downhole tool emulator to the one or morenew conditions may be sent from the downhole tool emulator (e.g., FIG.3, 304 and 306, determine reservoir model and initial downholeconditions and perform real-time well system simulation; FIG. 4, 406,408, 410 begin well system simulation and collect data from wellsimulation; FIG. 5, 510).

In an embodiment, at operation 818, one or more new conditions in thesimulated well system based at least partially on the at least oneoutput signal that represents a response of the simulated downhole toolto the one or more conditions and the reservoir model may be sent to thedownhole tool emulator (e.g., FIG. 3, 304 and 306, determine reservoirmodel and initial downhole conditions and perform real-time well systemsimulation; FIG. 4, 406, 408, 410 begin well system simulation andcollect data from well simulation; FIG. 5, 510).

In an embodiment, at operation 820, at least one new output signal thatrepresents a response of the downhole tool emulator may to the one ormore new conditions may be sent from the downhole tool emulator (e.g.,FIG. 3, 304 and 306, determine reservoir model and initial downholeconditions and perform real-time well system simulation; FIG. 4, 406,408, 410 begin well system simulation and collect data from wellsimulation; FIG. 5, 510).

In an embodiment, at operation 822, the at least one input signal may beconverted to one or more electrical signals that are compatible with theone or more electronic components to be placed in the downhole tool(e.g., FIG. 5).

In an embodiment, at operation 824, data may be collected that isrepresentative of an operation of the downhole tool emulator, whereinthe data comprises the one or more conditions, the response, and the atleast one command (e.g., FIG. 3, 308, collect data from real-timesimulation; FIG. 4, 408, 410 collect data from well simulation).

In an embodiment, at operation 826, the data may be analyzed todetermine proper operations of the one or more electronic components tobe placed in a downhole tool (e.g., FIG. 3, 310, perform analysis ondata from well system simulation; FIG. 4, 412 perform analysis on datafrom well system simulation). In an embodiment, at operation 828, theone or more conditions may include a fault condition in at least one ofthe one or more electronic components, and analyzing the data mayinclude determining whether the at least one of the one or moreelectronic components responded properly to the fault condition (e.g.,FIG. 6). In an embodiment, at operation 830, analyzing the data mayinclude comparing the at least one command to at least one expectedcommand that represents proper operation of the downhole tool emulator.

In one or more embodiments, the functions described may be implementedin hardware, software, firmware, or any combination thereof. For asoftware implementation, the techniques described herein may beimplemented with modules (e.g., procedures, functions, subprograms,programs, routines, subroutines, modules, software packages, classes,and so on) that perform the functions described herein. A module may becoupled to another module or a hardware circuit by passing and/orreceiving information, data, arguments, parameters, or memory contents.Information, arguments, parameters, data, or the like may be passed,forwarded, or transmitted using any suitable means including memorysharing, message passing, token passing, network transmission, and thelike. The software codes may be stored in memory units and executed byprocessors. The memory unit may be implemented within the processor orexternal to the processor, in which case it may be communicativelycoupled to the processor via various means as is known in the art.

In some embodiments, any of the methods 300, 400, 500, 600, 700, and 800may be executed by a computing system. FIG. 9 illustrates an example ofsuch a computing system 900, in accordance with some embodiments. Thecomputing system 900 may include a computer or computer system 901A,which may be an individual computer system 901A or an arrangement ofdistributed computer systems. The computer system 901A includes one ormore analysis module(s) 902 configured to perform various tasksaccording to some embodiments, such as one or more methods disclosedherein (e.g., methods 300, 400, 500, 600, 700, and 800 and/orcombinations and/or variations thereof). To perform these various tasks,the analysis module 902 executes independently, or in coordination with,one or more processors 904, which is (or are) connected to one or morestorage media 906. The processor(s) 904 is (or are) also connected to anetwork interface 907 to allow the computer system 901A to communicateover a data network 909 with one or more additional computer systemsand/or computing systems, such as 901B, 901C, and/or 901D (note thatcomputer systems 901B, 901C and/or 901D may or may not share the samearchitecture as computer system 901A, and may be located in differentphysical locations, e.g., computer systems 901A and 901B may be locatedin a processing facility, while in communication with one or morecomputer systems such as 901C and/or 901D that are located in one ormore data centers, and/or located in varying countries on differentcontinents).

A processor may include a microprocessor, microcontroller, processormodule or subsystem, programmable integrated circuit, programmable gatearray, or another control or computing device.

The storage media 906 may be implemented as one or morecomputer-readable or machine-readable storage media. Note that while inthe example embodiment of FIG. 9 storage media 906 is depicted as withincomputer system 901A, in some embodiments, storage media 906 may bedistributed within and/or across multiple internal and/or externalenclosures of computing system 901A and/or additional computing systems.Storage media 906 may include one or more different forms of memoryincluding semiconductor memory devices such as dynamic or static randomaccess memories (DRAMs or SRAMs), erasable and programmable read-onlymemories (EPROMs), electrically erasable and programmable read-onlymemories (EEPROMs) and flash memories, magnetic disks such as fixed,floppy and removable disks, other magnetic media including tape, opticalmedia such as compact disks (CDs) or digital video disks (DVDs),BLUERAY® disks, or other types of optical storage, or other types ofstorage devices. Note that the instructions discussed above may beprovided on one computer-readable or machine-readable storage medium, oralternatively, may be provided on multiple computer-readable ormachine-readable storage media distributed in a large system havingpossibly plural nodes. Such computer-readable or machine-readablestorage medium or media is (are) considered to be part of an article (orarticle of manufacture). An article or article of manufacture may referto any manufactured single component or multiple components. The storagemedium or media may be located either in the machine running themachine-readable instructions, or located at a remote site from whichmachine-readable instructions may be downloaded over a network forexecution.

In some embodiments, computing system 900 contains one or moresimulation modules 908. In the example of computing system 900, computersystem 901A includes the simulation module 908. In some embodiments, asingle simulation module may be used to perform some or all aspects ofone or more embodiments of the methods 300, 400, 500, 600, 700, and 800.In alternate embodiments, a plurality of simulation modules may be usedto perform some or all aspects of methods 300, 400, 500, 600, 700, and800.

It should be appreciated that computing system 900 is only one exampleof a computing system, and that computing system 900 may have more orfewer components than shown, may combine additional components notdepicted in the example embodiment of FIG. 9, and/or computing system900 may have a different configuration or arrangement of the componentsdepicted in FIG. 9. The various components shown in FIG. 9 may beimplemented in hardware, software, or a combination of both hardware andsoftware, including one or more signal processing and/or applicationspecific integrated circuits.

Further, the steps in the processing methods described herein may beimplemented by running one or more functional modules in informationprocessing apparatus such as general purpose processors or applicationspecific chips, such as ASICs, FPGAs, PLDs, or other appropriatedevices. These modules, combinations of these modules, and/or theircombination with general hardware are all included within the scope ofprotection of the invention.

Geologic interpretations, models and/or other interpretation aids may berefined in an iterative fashion; this concept is applicable to methods300, 400, 500, 600, 700, and 800 as discussed herein. This may includeuse of feedback loops executed on an algorithmic basis, such as at acomputing device (e.g., computing system 900, FIG. 9), and/or throughmanual control by a user who may make determinations regarding whether agiven step, action, template, model, or set of curves has becomesufficiently accurate for the evaluation of the subsurfacethree-dimensional geologic formation under consideration.

The foregoing description, for purpose of explanation, has beendescribed with reference to specific embodiments. However, theillustrative discussions above are not intended to be exhaustive or tolimit the invention to the precise forms disclosed. Many modificationsand variations are possible in view of the above teachings. Moreover,the order in which the elements of the methods 300, 400, 500, 600, 700,and 800 are illustrated and described may be re-arranged, and/or two ormore elements may occur simultaneously. The embodiments were chosen anddescribed in order to best explain the principals of the invention andits practical applications, to thereby enable others skilled in the artto best utilize the invention and various embodiments with variousmodifications as are suited to the particular use contemplated.

What is claimed is:
 1. A system, comprising: a downhole tool emulatorcomprising one or more downhole tool electronic components to be placedin a downhole tool; a simulated surface system comprising one or moresurface system electronic components to be placed in a surface system;and a computer system comprising one or more memory devices and one ormore processors, wherein the one or more memory devices storesinstructions that cause the one or more processors to perform a methodcomprising: simulating real-world operating conditions of the downholetool; and simulating real-world control of the downhole tool based atleast partially on one or more signals received from the downhole toolemulator.
 2. The system of claim 1, wherein the one or more memorydevices stores instructions that cause the one or more processors toperform the method further comprising: sending, to the downhole toolemulator, at least one input signal that represents one or moreconditions in a simulated well system, wherein the at least one inputsignal is generated based at least partially on a reservoir model of thesimulated well system; receiving, from the downhole tool emulator, atleast one output signal that represents a response of the downhole toolemulator to the one or more conditions; and sending, to the downholetool emulator from simulated surface system, at least one command thatrepresents an operation of the downhole tool emulator, wherein the atleast one command represents a change in the operation of the downholetool emulator based at least partially on the one or more conditions andthe response.
 3. The system of claim 2, wherein the one or more memorydevices stores instructions that cause the one or more processors toperform the method further comprising: generating the at least one inputsignal based at least partially on the reservoir model of the simulatedwell system.
 4. The system of claim 2, wherein the one or more memorydevices stores instructions that cause the one or more processors toperform the method further comprising: determining one or more newconditions in the simulated well system based at least partially on thechange in the operation of the downhole tool emulator and the reservoirmodel; and sending, to the downhole tool emulator, at least one newinput signal that represents the one or more new conditions in thesimulated well system.
 5. The system of claim 2, wherein the one or morememory devices stores instructions that cause the one or more processorsto perform the method further comprising: determining one or more newconditions in the simulated well system based at least partially on theat least one output signal that represents a response of the downholetool emulator to the one or more conditions and the reservoir model; andsending, to the downhole tool emulator, at least one new input signalthat represents the one or more new conditions in the simulated wellsystem.
 6. The system of claim 2, wherein the one or more memory devicesstores instructions that cause the one or more processors to perform themethod further comprising: collecting data that is representative of anoperation of the downhole tool emulator, wherein the data comprises theone or more conditions, the response, and the at least one command; andanalyzing the data to determine proper operations of the one or moredownhole tool electronic components.
 7. The system of claim 6, whereinthe one or more conditions comprise a fault condition in at least one ofthe one or more downhole tool electronic components, and whereinanalyzing the data comprises determining whether the at least one of theone or more downhole tool electronic components responded properly tothe fault condition.
 8. The system of claim 6, wherein analyzing thedata comprises comparing the at least one command to at least oneexpected command that represents proper operation of the downhole toolemulator.
 9. The system of claim 1, wherein the downhole tool emulatorconverts the at least one input signal to one or more electrical signalsthat are compatible with the one or more electronic components to beplaced in the downhole tool.
 10. A system, comprising: an emulateddownhole tool comprising: one or more downhole tool electroniccomponents to be placed in a downhole tool, and a downhole tool emulatorconfigured to communicate with the one or more downhole tool electroniccomponents to be placed in the downhole tool and emulate one or morereal-world operating conditions of the downhole tool; a simulatedsurface system comprising: one or more surface system electroniccomponents to be placed in a surface system, and a surface emulatorconfigured to communicate with the one or more surface system electroniccomponents to be placed in a surface system and emulate real-worldcontrol of the downhole tool based at least partially on one or moresignals received from the emulated downhole tool; and a computer systemcomprising one or more memory devices and one or more processors,wherein the one or more memory devices stores instructions that causethe one or more processors to perform a method comprising: sending, tothe emulated downhole tool, at least one input signal that representsone or more conditions in a simulated well system, wherein the at leastone input signal is generated by a reservoir model of the well system;receiving, from the emulated downhole tool via the simulated surfacesystem, at least one output signal that represents a response of theemulated downhole tool to the one or more conditions; and sending, tothe emulated downhole tool via the simulated surface system, at leastone command that represents an operation of the emulated downhole tool,wherein the at least one command represents a change in the operation ofthe emulated downhole tool based at least partially on the one or moreconditions and the response.
 11. The system of claim 10, wherein the oneor more memory devices stores instructions that cause the one or moreprocessors to perform the method further comprising: generating the atleast one input signal based at least partially on the reservoir modelof the simulated well system.
 12. The system of claim 11, wherein theone or more memory devices stores instructions that cause the one ormore processors to perform the method further comprising: determiningone or more new conditions in the simulated well system based at leastpartially on the change in the operation of the emulated downhole tooland the reservoir model; and sending, to the emulated downhole tool, atleast one new input signal that represents the one or more newconditions in the simulated well system.
 13. The system of claim 11,wherein the one or more memory devices stores instructions that causethe one or more processors to perform the method further comprising:determining one or more new conditions in the simulated well systembased at least partially on the at least one output signal thatrepresents a response of the emulated downhole tool to the one or moreconditions and the reservoir model; and sending, to the emulateddownhole tool, at least one new input signal that represents the one ormore new conditions in the simulated well system.
 14. The system ofclaim 11, wherein the one or more memory devices stores instructionsthat cause the one or more processors to perform the method furthercomprising: collecting data that is representative of an operation ofthe emulated downhole tool, wherein the data comprises the one or moreconditions, the response, and the at least one command; and analyzingthe data to determine proper operations of the one or more downhole toolelectronic components.
 15. The system of claim 14, wherein the one ormore conditions comprise a fault condition in at least one of the one ormore downhole tool electronic components, and wherein analyzing the datacomprises determining whether the at least one of the one or moredownhole tool electronic components responded properly to the faultcondition.
 16. The system of claim 14, wherein analyzing the datacomprises comparing the at least one command to at least one expectedcommand that represents proper operation of the emulated downhole tool.17. The system of claim 10, wherein the downhole tool emulator convertsthe at least one input signal to one or more electrical signals that arecompatible with the one or more downhole tool electronic components. 18.The system of claim 10, wherein the simulated surface system comprisesone or more physical interfaces to receive user input.
 19. The system ofclaim 1, wherein the downhole tool is configured to perform operationsin a wellbore using the downhole tool electronic components.
 20. Amethod, comprising: simulating real-world operating conditions of adownhole tool, wherein the downhole tool comprises a downhole toolemulator placed therein, and wherein the downhole tool emulatorcomprises one or more downhole tool electronic components; simulatingreal-world control of the downhole tool based at least partially on oneor more signals received from the downhole tool emulator, whereinsimulation of the real-world operating conditions and simulation of thereal-world control is performed by a computer system comprising one ormore memory devices and one or more processors, and wherein the one ormore memory devices store instructions that cause the one or moreprocessors to perform the simulation of the real-world operatingconditions and simulation of the real-world control; and sending, to thedownhole tool emulator from a simulated surface system, at least onecommand that represents an operation of the downhole tool emulator,wherein the simulated surface system comprises one or more surfacesystem electronic components to be placed in a surface system.
 21. Themethod of claim 20, further comprising: sending, to the downhole toolemulator, at least one input signal that represents one or moreconditions in a simulated well system, wherein the at least one inputsignal is generated based at least partially on a reservoir model of thesimulated well system; and receiving, from the downhole tool emulator,at least one output signal that represents a response of the downholetool emulator to the one or more conditions; wherein the at least onecommand from the simulated surface system to the downhole tool emulatorrepresents a change in the operation of the downhole tool emulator basedat least partially on the one or more conditions and the response. 22.The method of claim 21, further comprising generating the at least oneinput signal based at least partially on the reservoir model of thesimulated well system.
 23. The method of claim 21, further comprising:determining one or more new conditions in the simulated well systembased at least partially on the change in the operation of the downholetool emulator and the reservoir model; and sending, to the downhole toolemulator, at least one new input signal that represents the one or morenew conditions in the simulated well system.
 24. The method of claim 21,further comprising: determining one or more new conditions in thesimulated well system based at least partially on the at least oneoutput signal that represents a response of the downhole tool emulatorto the one or more conditions and the reservoir model; and sending, tothe downhole tool emulator, at least one new input signal thatrepresents the one or more new conditions in the simulated well system.25. The method of claim 21, further comprising: collecting data that isrepresentative of an operation of the downhole tool emulator, whereinthe data comprises the one or more conditions, the response, and the atleast one command; and analyzing the data to determine proper operationsof the one or more downhole tool electronic components.
 26. The methodof claim 25, wherein the one or more conditions comprise a faultcondition in at least one of the one or more downhole tool electroniccomponents, and wherein analyzing the data comprises determining whetherthe at least one of the one or more downhole tool electronic componentsresponded properly to the fault condition.
 27. The method of claim 25,wherein analyzing the data comprises comparing the at least one commandto at least one expected command that represents proper operation of thedownhole tool emulator.
 28. The method of claim 20, wherein the downholetool emulator converts the at least one input signal to one or moreelectrical signals that are compatible with the one or more downholetool electronic components to be placed in the downhole tool.
 29. Themethod of claim 20, wherein the downhole tool is configured to performoperations in a wellbore using the downhole tool electronic components.30. A method, comprising: sending, to an emulated downhole tool, atleast one input signal that represents one or more conditions in asimulated well system, wherein the at least one input signal isgenerated by a reservoir model of the simulated well system, wherein theemulated downhole tool comprises: one or more downhole tool electroniccomponents to be placed in a downhole tool; and a downhole tool emulatorconfigured to communicate with the one or more downhole tool electroniccomponents to be placed in the downhole tool and emulate one or morereal-world operating conditions of the downhole tool; receiving, fromthe emulated downhole tool via a simulated surface system, at least oneoutput signal that represents a response of the emulated downhole toolto the one or more conditions, wherein the simulated surface systemcomprises: one or more surface system electronic components to be placedin a surface system, and a surface emulator configured to communicatewith the one or more surface system electronic components to be placedin the surface system and emulate real-world control of the downholetool based at least partially on one or more signals received from theemulated downhole tool; and sending, to the emulated downhole tool viathe simulated surface system, at least one command that represents anoperation of the emulated downhole tool, wherein the at least onecommand represents a change in the operation of the emulated downholetool based at least partially on the one or more conditions and theresponse, and wherein sending the at least one input signal, receivingthe at least one output signal, and sending the at least one command areperformed by a computer system comprising one or more memory devices andone or more processors, and wherein the one or more memory devices storeinstructions that cause the one or more processors to perform thesending the at least one input signal, receiving the at least one outputsignal, and sending the at least one command.
 31. The method of claim30, further comprising generating the at least one input signal based atleast partially on the reservoir model of the simulated well system. 32.The method of claim 31, further comprising: determining one or more newconditions in the simulated well system based at least partially on thechange in the operation of the emulated downhole tool and the reservoirmodel; and sending, to the emulated downhole tool, at least one newinput signal that represents the one or more new conditions in thesimulated well system.
 33. The method of claim 31, further comprising:determining one or more new conditions in the simulated well systembased at least partially on the at least one output signal thatrepresents a response of the emulated downhole tool to the one or moreconditions and the reservoir model; and sending, to the emulateddownhole tool, at least one new input signal that represents the one ormore new conditions in the simulated well system.
 34. The method ofclaim 31, further comprising: collecting data that is representative ofan operation of the emulated downhole tool, wherein the data comprisesthe one or more conditions, the response, and the at least one command;and analyzing the data to determine proper operations of the one or moredownhole tool electronic components.
 35. The method of claim 34, whereinthe one or more conditions comprise a fault condition in at least one ofthe one or more downhole tool electronic components, and whereinanalyzing the data comprises determining whether the at least one of theone or more downhole tool electronic components responded properly tothe fault condition.
 36. The method of claim 34, wherein analyzing thedata comprises comparing the at least one command to at least oneexpected command that represents proper operation of the emulateddownhole tool.
 37. The method of claim 30, wherein the downhole toolemulator converts the at least one input signal to one or moreelectrical signals that are compatible with the one or more downholetool electronic components.
 38. The method of claim 30, wherein thesimulated surface system comprises one or more physical interfaces toreceive user input.